﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Timetabling.Core
{
    /// <summary>
    /// Clase asignatura
    /// </summary>
    public class Subject : Identity
    {
        private IList<Resource> resources = null;
        
        /// <summary>
        /// Nombre de la asingatura
        /// </summary>
        public String Name { get; set; }
        /// <summary>
        /// Profesor de la asingatura
        /// </summary>
        public Teacher Teacher { get; set; }
        /// <summary>
        /// Numero de horas por semana
        /// </summary>
        public int HoursPerWeek { get; set; }
        /// <summary>
        /// Especialidad de la asingatura
        /// </summary>
        public Branch Branch { get; set; }
        /// <summary>
        /// Descripcion de la asingatura
        /// </summary>
        public String Description { get; set; }
        /// <summary>
        /// Creditos de la asingatura
        /// </summary>
        public int Credits { get; set; }
        /// <summary>
        /// Secuencia de horas
        /// </summary>
        public String HourSecuence { get; set; }
        /// <summary>
        /// Curso de la asingatura
        /// </summary>
        public Course Course { get; set; }
        /// <summary>
        /// Recursos de la asingatura
        /// </summary>
        public IList<Resource> Resources {
            get {
                if (resources == null)
                {
                    resources = new List<Resource>();
                }
                return resources;
            }
            set {
                resources = value;
            }
        
        }


    }
}
